Network loading management system and method

ABSTRACT

A system for detecting and managing network data traffic and a network load traffic management module is described. The system for detecting and managing network data traffic includes a Radio Access Network (RAN), a plurality of mobile devices, a network load traffic management server, a first dataset and a corresponding first baseline, a second data set and a corresponding second baseline, a data flow dataset, and a probability for one or more mobile devices to remain within each location associated with each RAN site, wherein the probability is calculated by the network traffic management module.

FIELD

The description relates to a network loading management system andmethod. More specifically, the description relates to the radio accessnetwork loading management system and method detecting and managingnetwork data traffic.

BACKGROUND

Typically, network traffic management systems attempt to avoidcongestion by applying simple traffic management rules to the types ofnetwork traffic, such as the Radio Area Network (RAN) CongestionAwareness Function (RCAF) incorporated into Release 14 of the 3^(rd)Generation Partnership Project (3GPP) standard. Frequently, thesetraffic management rules simply target predetermined types of trafficsuch as peer-to-peer (P2P) or the like that are most likely to causecongestion.

In other cases, traffic management rules may provide for trafficmanagement during peak hours by limiting bandwidth per user during thesepeak times. These types of solutions can, in some cases, lower theQuality of Service (QoS) by affecting clients even when there is noactual congestion, restricting the clients from using bandwidth thatwould otherwise be available to them.

Additionally, the existing solutions may not even solve networkcongestion problems, because the enforcement policies are less than whatis required to relieve congestion or fail to anticipate networkcongestion events. For example, there may be few or no heavy users or alow amount of low priority traffic, such as peer-to-peer (P2P) or bulkdownloads, yet poorly targeted traffic management rules may cause thenetwork to still experience congestion events.

It would, therefore, be beneficial to provide load management systemsand methods that anticipate network congestion events and metrics byapplying dynamic traffic management policies that accurately targetsources of network congestion.

SUMMARY

A system for detecting and managing network data traffic and a networkload traffic management module is described. The system for detectingand managing network data traffic includes a Radio Access Network (RAN),a plurality of mobile devices, a network load traffic management server,a first dataset and a corresponding first baseline, a second data setand a corresponding second baseline, a data flow dataset, and aprobability for one or more mobile devices to remain within eachlocation associated with each RAN site, wherein the probability iscalculated by the network load traffic management module.

The radio access network (RAN) is associated with a service providernetwork. The RAN includes a plurality of RAN sites, in which each RANsite has a coverage area. Mobile devices are communicatively coupled tothe RAN. The network load traffic management server includes a networktraffic management module and a database that operate on a serverprocessor and a server memory. The network load traffic managementserver is communicatively coupled to the RAN. The first dataset isreceived by the network traffic management module, in which the firstdataset is associated with network components corresponding to the RAN.The second dataset is received by the network traffic management module,in which the second dataset corresponds to data flows associated withthe mobile devices communicatively coupled to the RAN.

The first baseline is generated with the first dataset for each RAN sitein the service provider network. The first baseline is generated with atleast one of a first historical dataset and a first recent dataset. Thesecond baseline is generated with at least one Key Performance Indicator(KPI) for each RAN site in the service provider network. The baseline isgenerated with at least one of a historical KPI dataset and a recent KPIdataset. The data flow dataset is tagged with a unique identifier foreach mobile device. The data flow dataset is configured to be stored inthe database, which is regularly updated with a recent data flow datasetassociated with each mobile device.

The location of the mobile devices is associated with the appropriateRAN site. A location change is detected for each mobile device. Aprobability is calculated for one or more mobile devices that remainwithin each location associated with each RAN site. The probability iscalculated by the network traffic management module. Also, theprobability may be determined for one or mobile devices to remain withinthe location associated with a particular RAN for a period of time.

Additionally, the system for detecting and managing network data mayinclude a projection generated based on the baseline level ofutilization, in which the projection is associated with a future timeperiod. Furthermore, access to the projection is provided with anApplication Programming Interface (API).

In one illustrative embodiment, the first dataset includes a utilizationdataset associated with the utilization of radio resources that includesa current utilization of radio resources. The utilization dataset may beassociated with the utilization of radio resources includes a capacityutilization of radio resources.

In another illustrative embodiment, the KPI for each RAN site includes amobility KPI associated with changing the mobile device location. Inanother illustrative embodiment, the KPI for each RAN site includes autilization KPI associated with the utilization of the networkcomponents.

A network load traffic management method is also described. The methodincludes receiving a first dataset associated with a plurality ofnetwork components corresponding to a Radio Access Network (RAN),wherein the first dataset is communicated to a network trafficmanagement module. The method also includes receiving a second datasetcorresponding to a plurality of mobile device data flows, in which thesecond dataset is associated with a service provider network thatincludes the RAN. The second dataset is communicated to the networktraffic management module. A first baseline is generated with the firstdataset for each RAN site in the service provider network. The firstbaseline is generated with at least one of a first historical datasetand a first recent dataset. A second baseline is generated with at leastone Key Performance Indicator (KPI) for each RAN site in the serviceprovider network, in which the baseline is generated with at least oneof a historical KPI dataset and a recent KPI dataset. The method thenproceeds to tag a data flow dataset with mobile device identificationinformation. The data flow dataset is configured to be stored in adatabase, which is regularly updated with the data flow dataset. Themobile devices that correspond to each RAN site based on a mobile devicelocation. The method determines the location change for each mobiledevice and then determines a probability for one or more mobile devicesto remain within each location associated with each RAN site.

In one illustrative embodiment, the probability for one or mobiledevices to remain within the location for a period of time is determinedby the network traffic management module.

In another illustrative embodiment, the method includes generating aprojection based on the baseline level of utilization, wherein theprojection is associated with a future time period. The method providesaccess to the projection with an Application Programming Interface(API).

DRAWINGS

The present subject matter will be more fully understood by reference tothe following drawings which are presented for illustrative, notlimiting, purposes.

FIG. 1A shows an illustrative traffic management module incorporatedinto a network traffic management and detection system.

FIG. 1B shows an illustrative flowchart of API procedures.

FIG. 2 shows a block diagram of network traffic flow through theillustrative network traffic management and detection system.

FIG. 3 shows an illustrative graph of network data traffic for a periodof time without downlink pacing by the traffic management module.

FIG. 4 shows an illustrative graph of network data traffic for a periodof time with downlink pacing by the traffic management module.

FIG. 5 shows exemplary downlink transmissions over time and pacing of aheavy hitter downlink.

FIG. 6 shows an illustrative block diagram of an extension module tooffload a congested base station (eNodeB) to a Wi-Fi module.

FIG. 7 shows an illustrative flow chart depicting the network trafficmanagement and detection for pacing a downlink between the RAN and amobile device.

DESCRIPTION

Persons of ordinary skill in the art will realize that the followingdescription is illustrative and not in any way limiting. Otherembodiments of the claimed subject matter will readily suggestthemselves to such skilled persons having the benefit of thisdisclosure. It shall be appreciated by those of ordinary skill in theart that the systems and methods described herein may vary as toconfiguration and as to details. Additionally, the methods may vary asto details, order of the actions, or other variations without departingfrom the illustrative methods disclosed herein.

The systems and methods described herein address network congestionissues and apply dynamic traffic management rules that accurately targetsources of network congestion. More specifically, the systems andmethods detect and manage network data traffic during periods of networkcongestion from real-time network event and measurement data. Thus, themethods and systems described herein identify periods of congestion fromhistorical and recent data. The system and method may include taggingdata flows with user device identification information to create anactive database of devices associated within a Radio Access Network(RAN).

A Radio Access Network (RAN) is part of a telecommunication system thatutilizes a Radio Access Technology (RAT). The RAN resides between UserEquipment (UE) and provides a connection to a Core Network (CN). RANsite is related to a site coverage area and may include a cell site, asector, a frequency or any other parameter associated with the RAN sitethat may be monitored, controlled or the combination thereof. UserEquipment (UE) includes devices such as a smartphone, mobile phones, acomputer, an IoT device, and other such devices. Radio AccessTechnologies (RATs) refers to the underlying physical connection methodfor a radio-based communication network. For example, a smartphone maycontain several RATs such as Bluetooth, Wi-Fi, 3G, 4G, and LTE. Dataflow is measured in bytes per second.

In general, the systems and methods for handling network congestionoptimize capacity utilization. Capacity utilization is the extent towhich an enterprise uses its installed productive capacity. It is therelationship between output that is produced with the installedequipment and the potential output which could be produced if thecapacity was fully used. Thus, capacity utilization is the ratio ofactual output to potential output.

By way of example and not of limitation, the system and method describedherein may be configured to pace the downlink for certain network usersidentified as “heavy hitters,” in order to optimize the customerexperience of all users on the network.

Referring to FIG. 1A, there is shown an illustrative an illustrativeradio access network (RAN) system 100, e.g. an LTE network, whichprovides mobile devices 104, i.e. User Equipment (UE), such as asmartphone with Internet connectivity. The illustrative RAN system 100includes a network traffic management module 102 for detecting andmanaging network data. The illustrative mobile device 104 communicateswith at least one eNodeB 106. The illustrative mobile device 104 mayinclude an International Mobile Subscriber Identity (IMSI).

More generally, the illustrative mobile device 104 may include apersonal computer, a laptop, a tablet computer, a smartphone. The mobiledevice 104 may be operationally coupled to a wide area network (WAN)such as the Internet by being communicatively coupled to a Radio AccessNetwork (RAN) associated with a service provider network. The mobiledevice 104 may also be communicatively coupled to the WAN via a Wi-Fi(or Bluetooth) access point (not shown) that is communicatively coupledto an illustrative modem (not shown), which is communicatively coupledto the WAN.

The network traffic management module 102 may be embodied in a networkload traffic management server 120 that resides in a cloud service 121.The illustrative network load traffic management server 120 includes aserver processor 122 and a server memory 124. The illustrative networkload traffic management server includes a network traffic managementmodule and a database that operate on a server processor and a servermemory. The network load traffic management server is communicativelycoupled to the RAN.

The illustrative cloud service 121 may be embodied as one of fourfundamental cloud service models, namely, infrastructure as a service(IaaS), platform as a service (PaaS), software as a service (SaaS), andnetwork as a service (NaaS). The cloud service models are deployed usingdifferent types of cloud deployments that include a public cloud, acommunity cloud, a hybrid cloud, and a private cloud.

Infrastructure as a service (IaaS) is the most basic cloud servicemodel. IaaS providers offer virtual machines and other resources. Thevirtual machines, also referred to as “instances,” are run as guests bya hypervisor. Groups of hypervisors within the cloud operational supportsystem support large numbers of virtual machines and the ability toscale services up and down according to customers' varying requirements.IaaS clouds often offer additional resources such as images in a virtualmachine image library, raw (block) and file-based storage, firewalls,load balancers, IP addresses, virtual local area networks (VLANs), andsoftware bundles. IaaS cloud providers supply these resources on demandfrom their large pools installed in data centers. For wide areaconnectivity, the Internet can be used or virtual private networks(VPNs) can be used.

Platform as a service (PaaS) enables cloud providers to deliver acomputing platform that may include an operating system, a programminglanguage execution environment, a database, and a web server.Application developers can develop and run their software solutions onthe PaaS without the cost and complexity of buying and managing theunderlying hardware and software layers. With some PaaS solutions, thesystem resources scale automatically to match application demand, so thecloud end user does not have to allocate resources manually.

Software as a service (SaaS) enables cloud providers to install andoperate application software in the cloud. Cloud end users access thesoftware from cloud clients. The cloud end users do not manage the cloudinfrastructure and platform that runs the application. The SaaSapplication is different from other applications because of scalability.Higher throughput can be achieved by cloning tasks onto multiple virtualmachines at run-time to meet the changing work demand. Load balancers inthe SaaS application distribute work over a set of virtual machines. Toaccommodate a large number of cloud end users, cloud applications may bemultitenant and serve more than one cloud end user organization. SomeSaaS solutions may be referred to as desktop as a service, businessprocess as a service, test environment as a service, communication as aservice, etc.

The fourth category of cloud services is Network as a service (NaaS), inwhich the capability provided to the cloud service end user is to use anetwork/transport connectivity services, an inter-cloud networkconnectivity services, or the combination of both. NaaS involves theoptimization of resource allocations by considering network andcomputing resources as a unified whole and traditional NaaS servicesinclude flexible and extended VPN, and bandwidth on demand.

There are different types of cloud deployment models for the cloud basedservice, which include a public cloud, a community cloud, a hybridcloud, and a private cloud. In a public cloud, applications, storage,and other resources are made available to the general public by aservice provider. These services are free or offer a pay-per-use model.

The community cloud infrastructure is between several organizations froma community with common concerns, and can be managed internally or by athird-party and hosted internally or externally; so the costs are spreadover fewer users than a public cloud (but more than a private cloud).

The private cloud infrastructure is dedicated for a single organization,whether managed internally or by a third-party and hosted internally orexternally. A private cloud project requires virtualizing the businessenvironment, and it requires that the organization reevaluate decisionsabout existing resources.

The hybrid cloud is a composition of two or more clouds (private,community or public) that remain unique entities but are bound together,offering the benefits of multiple deployment models. Hybrid cloudarchitecture requires both on-premises resources and off-site (remote)server-based cloud infrastructure. Although hybrid clouds lack theflexibility, security, and certainty of in-house applications, thehybrid cloud provides the flexibility of in-house applications with thefault tolerance and scalability of cloud-based services.

Referring back to FIG. 1A the illustrative radio network system 100provides User Equipment 104 (UE) such as a smartphone with Internetconnectivity. When a mobile device 104 has data to send to or receivefrom the Internet, it sets up a communication channel between itself andthe Packet Data Network Gateway 114. This involves message exchangesbetween the UE 104 and the Mobility Management Entity (MME) 108.

In coordination with the eNodeB base station 106, the Serving Gateway112, and the Packet Data Network Gateway 114, data plane tunnels areestablished between the base station 106 and the Serving Gateway 112,and between the Serving Gateway 112 and the Packet Data Network Gateway114. The network establishes a virtual communication channel, called anEPS bearer, to connect the UE and the base station.

For network access and service, entities in the illustrative network 100exchange control plane messages. A specific sequence of such controlplane message exchange is called a network procedure. For example, whena mobile device 104 powers up, it initiates an attach procedure with theMME 108, which includes establishing a radio connection to the basestation 106. Thus, each network procedure involves the exchange ofseveral control plane messages between two or more entities. Thespecifications for these are defined by the various 3GPP TechnicalSpecification Group.

The 3GPP R14 includes a Radio Congestion Awareness Function 125 (RCAF),which is an element that provides a RAN User Plane CongestionInformation (RUCI) to the Policy and Charging Rules Function 126 (PCRF)to enable the PCRF 126 to take the RAN 100 user plane congestion statusinto account for policy decisions. In operation, the RCAF 125 integrateswith RAN O&M to collect the information related to UE congestion, theimpacted base station 106 (eNodeB) and interrogates the MME 108 to getthe impacted subscribers and services. Afterward, the RCAF 125 updatesthe PCRF 126 with such information, so the PCRF 126 can make decisionsor implement policies to handle the subscribers/services currently incongestion.

The Policy and Charging Rules Function (PCRF) 126 is the software nodedesignated in real-time to determine policy rules in a multimedianetwork. As a policy tool, the PCRF 126 plays a central role innext-generation networks. The PCRF 126 is a software component thatoperates at the network core and accesses subscriber databases and otherspecialized functions, such as a charging system, in a centralizedmanner. Because it operates in real time, the PCRF 126 has an increasedstrategic significance and broader potential role than traditionalpolicy engines. The PCRF 126 is the part of the network architecturethat aggregates information to and from the network, operational supportsystems, and other sources (such as portals) in real time, supportingthe creation of rules and then automatically making policy decisions foreach subscriber active on the network. Such a network might offermultiple services, quality of service (QoS) levels, and charging rules.

The Application Function 128 (AF) interacts with applications orservices and extracts session information from the application signalingand provides it to the PCRF 126. The Rx 130 reference point residesbetween AF 128 and PCRF 126. The AF 128 provides the followingapplication session related information to the PCRF 126: SubscriberIdentifier, IP address of the UE, Media Type and Format, Bandwidth, Flowdescription e.g. Source and Destination IP addresses and the protocol,AF Application Identifier, AF Communication Service Identifier, AFApplication Event Identifier, AF Record Information, Flow Status,Priority Indicator and Emergency Indicator.

The Policy Charging and Enforcement Function 132 (PCEF) is located inthe PDN Gateway 114. The PCEF 132 provides service data flow detection,user plane traffic handling, trigger control plan session management,QoS handling, service data flow measurement, and online/offline charginginteractions. The PCEF 132 allows a particular data flow to pass througha PCEF only if the gating function allows. The PCEF 132 enforces theauthorized QoS of service data flow according to an active PolicyControl and Charging (PCC) rule. For service data flow that is subjectto charging control, the PCEF 132 will allow the service data flow topass through the PCEF 132 if and only if there is a corresponding PolicyControl and Charging (PCC) rule.

Current RAN network monitoring depends on cell-level aggregate KeyPerformance Indicators (KPI). Existing practice is to use performancecounters to derive these KPIs. The derived KPIs are then monitored bydomain experts, aggregated over certain pre-defined time window. Basedon domain knowledge and operational experience, these KPIs are used todetermine if service level agreements (SLA) are met.

An illustrative set of LTE KPIs includes radio network KPIs such asAccessibility KPIs, Retainability KPIs, Mobility KPIs, AvailabilityKPIs, Utilization KPIs, and Traffic KPIs. The illustrative set of radionetwork KPIs focuses on radio network performance. Additionally, theillustrative set of LTE KPIs may also include service KPIs such asLatency KPIs and Integrity KPIs. The service KPIs focus on the userexperience.

Service Level Agreement (SLA) can contribute to determining how customercare is perceived and aiding service providers in attracting customersand maintaining customer loyalty. An SLA is an element of a formal,negotiated contract between two parties such as a service provider and acustomer. SLAs can include many aspects of a service, such asperformance objectives, customer care procedures, billing arrangements,service provisioning requirements and other such services.

SLAs are supported by service or product Key Quality Indicator (KQIs).Service KQIs are the key indicators of the service element performanceand used as the primary input for management of internal orsupplier/partner SLAs that calculate actual service delivery qualityagainst design targets or in the case of supplier/partner contractualagreements. Service KQIs provide the main source of data for the productKQIs that are required to manage product quality and support thecontractual SLAs with the customer.

KQIs are supported by Key Performance Indicators (KPIs) that are anindication of service resource performance. Product KQIs and ServiceKQIs are associated with a customer focus. KPIs are associated with anetwork focus. For purposes of this patent application, the focus willbe on KPI, even though there is a direct relationship between KPIs andKQIs.

Referring to FIG. 1A, FIG. 1B and FIG. 2, there is shown an illustrativenetwork load traffic module 102 that detects and manages network datatraffic. In addition, to providing the functionality of RAN CongestionAwareness Function 125 (RACF), the network load traffic module iscommunicatively coupled to a variety of extension modules. For example,the extension modules may include a service proxy pacing extensionmodule 152, an application specific traffic management extension module154, a silent traffic scheduling extension module 156, an access networkextension module 158, and an illustrative third-party extension module160.

The service proxy pacing extension module 152 and application specifictraffic management module 154 may be configured to operate in a similarmanner, which supports video pacing downloads as described in furtherdetail below.

By way of example and not of limitation, the silent traffic schedulingextension module 156 may be configured to operate in a connected carapplication where firmware updates and media synchronization areconsidered “heavy traffic” applications that are important, but not timesensitive. Thus, the firmware updates and media synchronization need tobe scheduled to avoid congestion.

The illustrative access network extension module 158 is configured to becommunicatively coupled to a Wi-Fi access point (not shown) so that whenthe RAN is congested, then a Wi-Fi offload is performed to a Wi-Fioperator. However, when the RAN is not congested, the Wi-Fi offload isnot performed to avoid having to pay Wi-Fi operator traffic fees.

Third party extension modules 160 may operate in a manner similar to theextension modules described above. Additionally, the third-partyextension modules may be associated with social networking, gaming,news, productivity and other such third-party applications.

Referring now to FIG. 2, the illustrative network load traffic module102 includes a Core Services Module 162. The Core Services Module 162further includes an Analytics Engine Module 164 that receives data fromData Domains Module 166. The Data Domains Module may be embodied in arelational database such as a MySQL database.

Referring to FIGS. 1A and 2, the illustrative Data Domains Module 166 isconfigured to record RAN Events 168. RAN Events 168 may includeunscheduled RAN event information such as unscheduled eNodeB outages,non-predictive loading condition, mobile reporting componentmeasurements. Additionally, RAN Events 168 may include scheduled RANevent information such as scheduled eNodeB outages, scheduledmaintenance, forecast RAN coverage conditions such as anticipatedloading conditions based on historical patterns.

Referring to FIG. 2, the illustrative Data Domains Module 166 is alsoconfigured to record Load Measurements 170, which may be based onmeasurements of the various radio resource utilization including but notlimited to the total transmit power, total noise floor, and code usage.Radio resource management function includes admission control,congestion control, channel switching and bearer reconfiguration, coderesource management, and packet scheduling. Most of the specificprocedures for these functions are not subject to 3GPP standardizationand considered a major differentiating factor between equipmentmanufacturers.

The illustrative Analytics Engine 164 may include a load statisticsmodule 172 that generates statistics from the database and may alsoimplement business rules or procedures that correspond to a triggeringevent, which may be derived from exceeding a threshold in the datadomains module 166.

Returning to FIG. 1A, In the illustrative embodiment, an illustrativefirst dataset is received by the network traffic management module 102.The first dataset is associated with network components corresponding tothe RAN as represented by block 172. For example, the first dataset maybe generated from control plane signaling and load measurements based oneach network element. In the illustrative embodiment, the networkelements may include cells, base stations, eNodeB base stations or othersuch network elements.

In one illustrative embodiment, the first dataset includes a utilizationdataset associated with the utilization of radio resources that includesa current utilization of radio resources. The utilization dataset may beassociated with the utilization of radio resources including a capacityutilization of radio resources

A first baseline is generated with the first dataset for each RAN sitein the service provider network. The first baseline may be generatedwith a first historical dataset, a first recent dataset or thecombination thereof. For example, the historical dataset may beassociated with control plane signaling and load measurements based oneach network element.

An illustrative second dataset is also received by the network trafficmanagement module. The second dataset corresponds to data flowsassociated with the mobile devices communicatively coupled to the RAN asreflected in block 174. In the illustrative embodiment, the seconddataset may be associated with a User Plane Session, flow datacorresponding to the Managed Service Provider, flow data correspondingto the Charging Data Record (CDR), or any module component or suchnetwork element.

A second baseline may also be generated with at least one KeyPerformance Indicator (KPI) for each RAN site in the service providernetwork. The baseline is generated with a historical KPI dataset, arecent KPI dataset or any combination thereof, which may be associatedwith the MSP 116, the PCRF 126, the PDN Gateway 114 or any other suchnetwork element, network component, network module or other such networkelement associated with a mobile device 104.

In another illustrative embodiment, the KPI for each RAN site includes amobility KPI associated with changing the mobile device location. Inanother illustrative embodiment, the KPI for each RAN site includes autilization KPI associated with the utilization of the networkcomponents.

At block 174 of the illustrative embodiment, the data flow dataset istagged with an identification for each mobile device. The data flowdataset is configured to be stored in the database, which is regularlyupdated with a recent data flow dataset associated with each mobiledevice.

The location of the mobile devices is associated with the appropriateRAN site. The location of the mobile device 104 may be associated with abase station 106, which is communicatively coupled to the mobile device104. A location change may be detected for each mobile device bydetermining when a handoff occurs between base stations such when themobile device terminates communication with eNodeB 106 and moves toeNodeB 176.

The illustrative network traffic management module 102 calculates aprobability for one or more mobile devices that remain within eachlocation associated with each RAN site. Also, the network trafficmanagement module 102 may calculate another probability for one ormobile devices to remain within the location associated with aparticular RAN for a period of time.

Additionally, the network traffic management module 102 generates aprojection based on the baseline level of utilization, in which theprojection is associated with a future time period. Furthermore, accessto the projection may be performed with an Application ProgrammingInterface (API).

Various elements of the network traffic management module 102 mayphysically reside in or near a RAN site or a central RAN facility.Additionally, the network traffic management module may includeoperations that operate using an illustrative RESTful API, which allowsrequesting systems to access and manipulate textual representations ofWeb resources using a uniform and predefined set of statelessoperations. In a RESTful Web service, requests made to a resource's URIreceive a response that may be in XML, HTML, JSON or some other definedformat. The response may confirm that some alteration has been made tothe stored resource, and it may provide hypertext links to other relatedresources or collections of resources. By using a stateless protocol andstandard operations, REST systems aim for fast performance, reliability,and the ability to grow, by re-using components that can be managed andupdated without affecting the system as a whole, even while it isrunning.

A RESTful API breaks down a transaction to create a series of smallmodules, in which each module addresses a particular underlying part ofthe transaction. This modularity provides developers with a great dealof flexibility, but it can be challenging for developers to design fromscratch. RESTful API explicitly takes advantage of HTTP methodologiesdefined which use GET to retrieve a resource and POST to create thatresource.

Referring now to FIG. 1B, there is shown an illustrative flow chart ofthe procedures performed by the network traffic management module 102.At the block 182, the first procedure may include querying each mobiledevice, e.g. IMSI. The querying of each mobile device may includereturning a Service Cell Identifier and Cell Location, returning a CellLoad Factor and current nominal expected service level, returning anIMSI Mobility Factor (fixed, stationary, pedestrian, slow, medium, highspeed), or any combination thereof.

The method may then proceed to block 184 where a query by cell site orbase station may be performed. The query may include returning Cell LoadFactor and current nominal expected service level, IMSI list of alldevices associated with the CELL, or any combination thereof. At block186, a query by cell site and a time delta may be performed, whichreturns projected future cell load factor and confidence indicator.

Referring now to FIG. 3, there is shown a graph 200 of illustrativenetwork data traffic at an eNodeB 106 measured over time, without anydownlink pacing, such as when data traffic at an eNodeB 106 is managedby a simple RCAF as incorporated into Release 14 of the 3GPP standard.The utilization of the eNodeB 202 reflects the amount of data traffic onthe network. The graph 200 depicts two periods of congestion, T_(c1) 204a and T_(c2) 204 b, during which times the utilization 202 reaches themaximum threshold or capacity 206 of the eNodeB 106. During these timesof congestion T_(c1) 204 a and T_(c2) 204 b, actual utilization orcapacity demand 208 on the eNodeB 106 exceeds the capacity 206 of theeNodeB 106. The shaded area enclosed by the utilization capacity 206 andthe capacity demand 208 represents data traffic tonnage that is lost orblocked 210 due to resource limitation. During the periods of congestionT_(c1) 204 a and T_(c2) 204 b, customer experience and key performanceindicators (KPIs) decrease because of the data traffic lost or blocked210.

The graph 200 further includes an indication of the average utilization212 of the eNodeB 106. Because average utilization is commonly used byservice providers to determine when, where, and whether to expandcapacity in a location or of a particular eNodeB 106; and because theaverage utilization 212 does not accurately reflect the occurrence ofperiods of congestion where utilization capacity is exceeded, averageutilization rarely triggers growth of the utilization capacity in suchcongested eNodeB 106 units. However, the pacing solution offered by thetraffic management module 102 diminishes the need for increasedcapacity.

In the illustrative embodiment, the network traffic management module102 receives load factor information from the eNodeB 106 and/or the MME108. From the load factor information, the traffic management module 102determines a degree of capacity utilization for one or more eNodeB 106units, and a predicted baseline level of capacity utilization for afuture time. From the degree of capacity utilization and the predictedfuture time capacity utilization, the traffic management module 102identifies “heavy hitting” users, paces the downlink for these usersfrom some time prior to a predicted period of congestion until a latertime after that time period. The traffic management module 102,therefore improves customer experience by spreading downlink trafficthroughout a time period in order to reduce congestion during peaktraffic time periods.

Referring now to FIG. 4, there is shown a graph 220 of the same networkdata traffic 202 at the same eNodeB 106 measured over time as in FIG. 3,but here the traffic management module 102 enables downlink pacing thatalleviates network congestion. The traffic management module 102predicts network congestion using the load factor information receivedfrom the eNodeB 106 and initiates downlink pacing of certain users orIMSI devices 104 to prevent and/or mitigate network congestion. Arrow222 indicates the onset of downlink pacing, in order to distribute thenetwork data traffic incident at the eNodeB 106 over a greater span oftime. Arrow 224 indicates the termination of downlink pacing and areturn to normal service. During the period of time from downlink pacingonset 222 until termination 224, the periods of congestion T_(c1) 204 aand T_(c2) 204 b in FIG. 3 are reduced to a single shorter period ofcongestion T_(c) 204 c. During the period of pacing and this reducedperiod of congestion T_(c) 204 c, customer experience, and KPIs areimproved over the customer experience and KPIs associated with graph200. The traffic management module 102 smooths utilization peaks,thereby accommodating the capacity demand 208 and allowing all downlinksto proceed with minimal or no impediments. The shaded area 226represents the data tonnage that the traffic management module 102allocates across the period of pacing from arrow 222 through arrow 224.Thus, the traffic management module 102 allows the eNodeB 106 toaccommodate users and IMSI devices 104 even during periods of peakdemand, represented by the shaded areas 226 that extend above thecapacity 206 of the eNodeB 106.

In the illustrative embodiment, the load factor information is receivedin response to a query by the traffic management module 102. The eNodeB106 and the MME 108 provide load factor information to the trafficmanagement module 102 including a current nominal expected servicelevel, location, active IMSI devices, and a mobility factor for eachIMSI device 104.

Referring now to FIG. 5, there are shown three (3) illustrative IMSIdevice downlinks running simultaneously on the same RAN 106, a videostreaming downlink 230, a webpage downlink 250, and an interactive audiodownlink 260. The video streaming downlink 230 can include MP4 files,X-MPEG files, or similar video file formats. The webpage downlink 250can include text, html, or any other similar format. The interactiveaudio downlink 260 can include telephony data packets, audio files,other audio data or any combination thereof.

The traffic management module 102 receives status and hardwareinformation from one or more RAN or eNodeB 106 or one or more MMEs 108.The status and hardware information can include a utilization capacity206 or maximum bandwidth of each eNodeB 106, a current utilization foreach eNodeB 106, a list of IMSI devices 104 communicating with eacheNodeB 106, a location of each eNodeB 106, and a location of each IMSIdevice 104. The status and hardware information can range over ahistorical period of time from the present backward. The trafficmanagement module 102 can use the historical location data to determinemobility factors for each IMSI device 104. Mobility factors can indicatea status of an IMSI device 104 that correlates to the probability of theIMSI device 104 will remain in communication with the eNodeB 106 for afuture period of time, such as fixed, stationary, pedestrian, slowspeed, medium speed, and high speed.

Once an eNodeB 106 has been registered by the traffic management module102, the traffic management module can recognize the video streamingdownlink 230 of a heavy hitting user, anticipate an upcoming period ofcongestion, and initiate pacing of the video streaming downlink 230 toaccommodate users and IMSI devices 106 during the period of congestion.Each solid bar 232 a, 232 b, 232 c represents a downlink data packet.The width of the downlink data packet 232 reflects the volume of datacontained in the downlink data packet 232. The transparent bars 234represent the anticipated or predicted data packets of the videostreaming downlink 230 in the absence of downlink pacing by the trafficmanagement module 102. With downlink pacing initiated, paced datapackets 236 a, 236 b, and 236 c replace the predicted data packets 234of the video streaming downlink 230.

In operation, the traffic management module 102 initiates downlinkpacing when the webpage downlink 250 and the interactive audio downlink260 become active, placing a new load on the RAN 106 and creating thepotential for future congestion. The shaded boxes 238 a, 238 b, 238 c,and 238 d highlight potential periods of congestion, where each of thevideo streaming downlink 230, the webpage downlink 250, and theinteractive audio downlink 260 would have congested the RAN 106 bysending data packets 232 during the same time period. Thus, as the RANutilization increases due to the additional active downlinks, pacing ofthe video streaming downlink 230 accommodates all downlinks by allowingthe video streaming downlink 230, the webpage downlink 250, and theinteractive audio downlink 260 to run simultaneously without exceedingthe capacity of the eNodeB or RAN 106. In the illustrative example, thewebpage downlink 250, and the interactive audio downlink 260 continueunchanged, while only the video streaming downlink 230 is paced.

In one embodiment, downlink pacing can be a gradual/compounded process.In the gradual or compounded process, the traffic management module 102initiates pacing by delaying the video stream downlink 230 data packet234 a for x milliseconds 240. The traffic management module 102 thendelays the following video stream downlink 230 data packet 234 b for ymilliseconds 242, where y>x. Next, the traffic management module 102delays a third video stream downlink 230 data packet 234 c for zmilliseconds 244, where z>y. Similarly, the traffic management module102 terminates downlink pacing gradually by allowing paced data packets236 to be transmitted more frequently.

In another embodiment, the traffic management module 102 initiatesdownlink pacing immediately by delaying the video stream downlink 230data packet 234 a for a number of milliseconds equal to the time betweenevery paced downlink data packet.

Referring now to FIG. 6, there is shown a further embodiment wherein thetraffic management module 102 initiates offloading of certain downlinksor IMSI devices 104 to a wireless fidelity (Wi-Fi) network 270 to reducecongestion at an eNodeB 106. In one embodiment, the traffic managementmodule 102 attempts to offload appropriate IMSI devices 104 to anavailable Wi-Fi network 270 prior to initiating pacing of any heavyhitting user. In another embodiment, the traffic management module 102attempts to offload appropriate IMSI devices 104 to an available Wi-Finetwork 270 while initiating pacing of any heavy hitting user. After theperiod of congestion, the traffic management module 102 seamlesslyswitches the IMSI device 104 back to the eNodeB 106.

Referring now to FIG. 7 and FIG. 1A, there is shown an illustrative flowchart 300 of the illustrative method for detecting and managing networkdata traffic. The method begins when the traffic management module 102queries one or more RAN 106 or MME 108 for an informative response atstep 302. The method proceeds with the one or more RAN 106 or MME 108sending informative responses to the traffic management module 102 atstep 304. The informative response can include a utilization capacity206 or maximum bandwidth of each eNodeB 106, a current utilization foreach eNodeB 106, a list of IMSI devices 104 communicating with eacheNodeB 106, a location of each eNodeB 106, and a location of each IMSIdevice 104. The traffic management module 102 then compiles, sorts, andstores the information contained in the various informative responses ina database at step 306.

At step 308 the traffic management module 102 determines a degree ofutilization and baseline capacity of each eNodeB 106. In a furtherembodiment, the traffic management module 102 determines a mobilityfactor for each IMSI device 104 listed as active for each eNodeB 106. Attraining process block 309, behavior modeling and training using RANevents and load measurement are performed.

Next, the traffic management module predicts time periods of congestionbased on the informative responses, the degree of utilization, thebaseline capacity, the mobility factors, and any combination thereof atstep 310. The traffic management module 102 then identifies one or moreheavy hitting downlinks running over the eNodeB 106 for pacing duringthe predicted periods of congestion at step 312. The traffic managementmodule 102 initiates pacing prior to the predicted period of congestionand terminates after the predicted period of congestion at step 314,which connects back to the training process at block 309.

The systems and methods described above address network congestionissues and apply flexible traffic management rules that accuratelytarget sources of network congestion. The systems and methods detect andmanage network data traffic during periods of network congestion fromreal-time network event and measurement data. The system and method mayinclude tagging data flows with user device identification informationto create an active database of devices associated with a Radio AccessNetwork (RAN).

It is to be understood that the detailed description of illustrativeembodiments is provided for illustrative purposes. The scope of theclaims is not limited to these specific embodiments or examples.Therefore, various process limitations, elements, details, and uses candiffer from those just described, or be expanded on or implemented usingtechnologies not yet commercially viable, and yet still be within theinventive concepts of the present disclosure. The scope of the inventionis determined by the following claims and their legal equivalents.

What is claimed is:
 1. A network load traffic management method comprising: receiving a first dataset associated with a plurality of network components corresponding to a Radio Access Network (RAN), wherein the first dataset is communicated to a network traffic management module; receiving a second dataset corresponding to a plurality of mobile device data flows, in which the second dataset is associated with a service provider network that includes the RAN, wherein the second dataset is communicated to the network traffic management module; generating, at the network traffic management module, a first baseline with the first dataset for each RAN site in the service provider network, wherein the first baseline is generated with at least one of a first historical dataset and a first recent dataset; generating, at the network traffic management module, a second baseline with at least one Key Performance Indicator (KPI) for each RAN site in the service provider network, wherein the baseline is generated with at least one of a historical KPI dataset and a recent KPI dataset; tagging, at the network traffic management module, a data flow dataset with a plurality of mobile device identification information, wherein the data flow dataset is configured to be stored in a database, which is regularly updated with the data flow dataset; associating the plurality of mobile devices that correspond to each RAN site based on a mobile device location; determining, at the network traffic management module, a location change for each mobile device; determining, at the network traffic management module, a probability for one or more mobile devices to remain within each location associated with each RAN site.
 2. The method of claim 1 wherein determining the probability for one or mobile devices to remain within the location is configured to be associated with a particular RAN for a period of time.
 3. The method of claim 1 further comprising generating a projection based on the baseline level of utilization, wherein the projection is associated with a future time period.
 4. The method of claim 3 wherein access to the projection is provided with an Application Programming Interface (API).
 5. The method of claim 1 wherein the first dataset includes a utilization dataset associated with the utilization of radio resources that includes a current utilization of radio resources.
 6. The method of claim 5 wherein the utilization dataset associated with the utilization of radio resources includes a capacity utilization of radio resources.
 7. The method of claim 1 wherein the KPI for each RAN site includes a mobility KPI associated with changing the mobile device location.
 8. The method of claim 1 wherein the KPI for each RAN site includes a utilization KPI associated with the utilization of the network components.
 9. A system for detecting and managing network data traffic, the system comprising: a radio access network (RAN) associated with a service provider network, the RAN including a plurality of RAN sites, in which each RAN site has a coverage area; a plurality of mobile devices communicatively coupled to the RAN; a network load traffic management server that includes a traffic management module and a database that operate on a server processor and a server memory, wherein the network load traffic management server is communicatively coupled to the RAN; a first dataset received by the network traffic management module, wherein the first dataset is associated with a plurality of network components corresponding to the RAN; a second dataset received by the network traffic management module, wherein the second dataset corresponds to data flows associated with the plurality of mobile devices communicatively coupled to the RAN; a first baseline generated with the first dataset for each RAN site in the service provider network by the network load traffic management module, wherein the first baseline is generated with at least one of a first historical dataset and a first recent dataset; a second baseline generated with at least one Key Performance Indicator (KPI) for each RAN site in the service provider network, wherein the baseline is generated with at least one of a historical KPI dataset and a recent KPI dataset; a data flow dataset that is tagged with an identification for each mobile device, wherein the data flow dataset is configured to be stored in the database, which is regularly updated with a recent data flow dataset associated with each mobile device; the plurality of mobile devices associated with each RAN site based on a mobile device location; a location change detected for each mobile device; and a probability for one or more mobile devices to remain within each location associated with each RAN site, wherein the probability is calculated by the network traffic management module.
 10. The system for detecting and managing network data traffic of claim 9 wherein the probability is determined for one or mobile devices to remain within the location associated with a particular RAN for a period of time.
 11. The system for detecting and managing network data traffic of claim 9 further comprising a projection generated based on the baseline level of utilization, wherein the projection is associated with a future time period.
 12. The system for detecting and managing network data traffic of claim 11 wherein access to the projection is provided with an Application Programming Interface (API).
 13. The system for detecting and managing network data traffic of claim 9 wherein the first dataset includes a utilization dataset associated with the utilization of radio resources that includes a current utilization of radio resources.
 14. The system for detecting and managing network data traffic of claim 13 wherein the utilization dataset associated with the utilization of radio resources includes a capacity utilization of radio resources.
 15. The system for detecting and managing network data traffic of claim 9 wherein the KPI for each RAN site includes a mobility KPI associated with changing the mobile device location.
 16. The system for detecting and managing network data traffic of claim 9 wherein the KPI for each RAN site includes a utilization KPI associated with the utilization of the network components.
 17. A system for detecting and managing network data traffic, the system comprising: a radio access network (RAN) associated with a service provider network, the RAN including a plurality of RAN sites, in which each RAN site has a coverage area; a plurality of mobile devices communicatively coupled to the RAN; a network load traffic management server that includes a traffic management module and a database that operate on a server processor and a server memory, wherein the network load traffic management server is communicatively coupled to the RAN; a first dataset received by the network traffic management module, wherein the first dataset is associated with a plurality of network components corresponding to the RAN, wherein the first dataset includes a utilization dataset associated with the utilization of radio resources that includes a current utilization of radio resources; a second dataset received by the network traffic management module, wherein the second dataset corresponds to data flows associated with the plurality of mobile devices communicatively coupled to the RAN; a first baseline generated with the first dataset for each RAN site in the service provider network by the network load traffic management module, wherein the first baseline is generated with at least one of a first historical dataset and a first recent dataset; a second baseline generated with at least one Key Performance Indicator (KPI) for each RAN site in the service provider network, wherein the baseline is generated with at least one of a historical KPI dataset and a recent KPI dataset; a data flow dataset that is tagged with an identification for each mobile device, wherein the data flow dataset is configured to be stored in the database, which is regularly updated with a recent data flow dataset associated with each mobile device; the plurality of mobile devices associated with each RAN site based on a mobile device location; a location change detected for each mobile device; a probability for one or more mobile devices to remain within each location associated with each RAN site for a period of time, wherein the probability is calculated by the network traffic management module; a projection generated based on the baseline level of utilization, wherein the projection is associated with a future time period, wherein access to the projection is provided with an Application Programming Interface (API).
 18. The system for detecting and managing network data traffic of claim 17 wherein the utilization dataset associated with the utilization of radio resources includes a capacity utilization of radio resources.
 19. The system for detecting and managing network data traffic of claim 17 wherein the KPI for each RAN site includes a mobility KPI associated with changing the mobile device location.
 20. The system for detecting and managing network data traffic of claim 17 wherein the KPI for each RAN site includes a utilization KPI associated with the utilization of the network components. 